package br.com.medmark.model.hibernate;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name="tb_clinicas")
public class Clinica implements Serializable{
	
	private static final long serialVersionUID = 4483217934997877421L;

	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="codigo")
	private int codigo;
	
	@Column(name="nome")
	private String nome;
	
	@Column(name="rua")
	private String rua;
	
	@Column(name="complemento")
	private String complemento;
	
	@Column(name="bairro")
	private String bairro;
	
	@Column(name="cidade")
	private String cidade;
	
	@Column(name="estado")
	private String estado;
	
	@Column(name="numero")
	private String numero;
	
	@Column(name="telefone_1")
	private String telefone1;
	
	@Column(name="telefone_2")
	private String telefone2;
	
	@Column(name="telefone_3")
	private String telefone3;
	
	@Column(name="login", unique=true)
	private String login;
	
	@Column(name="senha")
	private String senha;
	
	@Column(name="nome_responsavel")
	private String nomeResponsavel;
	
	@Column(name="cpf_responsavel")
	private String cpfResponsavel;
	
	@Column(name="cnpj_clinica")
	private String cnpjClinica;
	
	@Column(name="desativada")
	private String desativada;
	
	@OneToMany(cascade = CascadeType.ALL,mappedBy = "clinica", targetEntity = AlocacaoProfissional.class, fetch = FetchType.LAZY)
	private List<AlocacaoProfissional> alocacoes;

	public int getCodigo() {
		return codigo;
	}

	public void setCodigo(int codigo) {
		this.codigo = codigo;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getRua() {
		return rua;
	}

	public void setRua(String rua) {
		this.rua = rua;
	}

	public String getBairro() {
		return bairro;
	}

	public void setBairro(String bairro) {
		this.bairro = bairro;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getEstado() {
		return estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public String getNumero() {
		return numero;
	}

	public void setNumero(String numero) {
		this.numero = numero;
	}

	public String getTelefone1() {
		return telefone1;
	}

	public void setTelefone1(String telefone1) {
		this.telefone1 = telefone1;
	}

	public String getTelefone2() {
		return telefone2;
	}

	public void setTelefone2(String telefone2) {
		this.telefone2 = telefone2;
	}

	public String getTelefone3() {
		return telefone3;
	}

	public void setTelefone3(String telefone3) {
		this.telefone3 = telefone3;
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}

	public String getNomeResponsavel() {
		return nomeResponsavel;
	}

	public void setNomeResponsavel(String nomeResponsavel) {
		this.nomeResponsavel = nomeResponsavel;
	}

	public String getCpfResponsavel() {
		return cpfResponsavel;
	}

	public void setCpfResponsavel(String cpfResponsavel) {
		this.cpfResponsavel = cpfResponsavel;
	}

	public String getCnpjClinica() {
		return cnpjClinica;
	}

	public void setCnpjClinica(String cnpjClinica) {
		this.cnpjClinica = cnpjClinica;
	}

	public String getComplemento() {
		return complemento;
	}

	public void setComplemento(String complemento) {
		this.complemento = complemento;
	}

	public List<AlocacaoProfissional> getAlocacoes() {
		return alocacoes;
	}

	public void setAlocacoes(List<AlocacaoProfissional> alocacoes) {
		this.alocacoes = alocacoes;
	}

	public String getDesativada() {
		return desativada;
	}

	public void setDesativada(String desativada) {
		this.desativada = desativada;
	}


	
	

}
